/**
 * 
 */
package pe.bf.extranet.ws;

import java.math.BigInteger;
import java.util.List;

import javax.ejb.EJB;
import javax.jws.WebMethod;
import javax.jws.WebService;

import pe.bf.domain.bean.Empleado;
import pe.bf.domain.bean.SolicitudCreacion;
import pe.bf.domain.exceptions.DomainException;
import pe.bf.extranet.ejb.SolicitudCreacionEJB;

/**
 * @author rfigueroa
 * 
 */
@WebService
public class SolicitudCreacionWS {

	@EJB
	private SolicitudCreacionEJB solicitudCreacionEJB;

	/**
	 * 
	 */
	public SolicitudCreacionWS() {
	}

	/**
	 * 
	 * @param solicitudCreacion
	 * @throws Exception 
	 */
	@WebMethod  
	public void createSolicitudCreacion(SolicitudCreacion solicitudCreacion)
			  {
		try {
			solicitudCreacionEJB.createSolicitudCreacion(solicitudCreacion);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	/**
	 * 
	 * @param solicitudCreacion
	 * @throws DomainException
	 */
	@WebMethod  
	public void actualizarSolicitudCreacion(SolicitudCreacion solicitudCreacion)
			throws DomainException {
		try {
			solicitudCreacionEJB.createSolicitudCreacion(solicitudCreacion);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

	/**
	 * 
	 * @param solicitudCreacion
	 * @throws DomainException
	 */
	@WebMethod  
	public void eliminarSolicitudCreacion(SolicitudCreacion solicitudCreacion)
			throws DomainException {
		solicitudCreacionEJB.eliminarSolicitudCreacion(solicitudCreacion);
	}

	/**
	 * 
	 * @return
	 * @throws DomainException
	 */
	@WebMethod  
	public List<SolicitudCreacion> listarSolicitudCreacion()
			throws DomainException {
		return solicitudCreacionEJB.listarSolicitudCreacion();
	}

	/**
	 * 
	 * @param codigoEmpresa
	 * @return
	 * @throws DomainException
	 */
	@WebMethod  
	public List<SolicitudCreacion> listarSolicitudCreacionPorEmpresa(
			BigInteger codigoEmpresa) throws DomainException {
		return solicitudCreacionEJB
				.listarSolicitudCreacionPorEmpresa(codigoEmpresa);
	}

	/**
	 * 
	 * @param codigoEmpresa
	 * @param codigoSolicitudCreacion
	 * @return
	 * @throws DomainException
	 */
	@WebMethod  
	public List<Empleado> listarDetalleSolicitudCreacion(
			BigInteger codigoEmpresa, BigInteger codigoSolicitudCreacion)
			throws DomainException {
		return solicitudCreacionEJB.listarDetalleSolicitudCreacion(
				codigoEmpresa, codigoSolicitudCreacion);

	}

}
